﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Collections;

namespace t_205_verk_hopur_12.Models
{
    public class ChannelIndexViewModel
    {
        public Channel Channel { get; set; }
        public User Owner { get; set; }
        public Category Category { get; set; }
        public ScheduleVideo CurrentSchedule { get; set; }
        public IQueryable<ScheduleVideo> Schedule { get; set; }
        public IQueryable<ScheduleVideo> TopRated { get; set; }
        public IQueryable<Announcement> Announcements { get; set; }
        public bool HasUserVotedChannel { get; set; }
        public bool HasUserVotedVideo { get; set; }
        public bool IsOwnerOrEmployee { get; set; }
        public bool IsSubscribedToChannel { get; set; }
        public bool HasAppliedToChannel { get; set; }

        public ChannelIndexViewModel()
        {
        }

        public ChannelIndexViewModel(Channel argChannel, User argOwner, Category argCategory,
            ScheduleVideo argCurrentSchedule, IQueryable<ScheduleVideo> argSchedule, bool argHasUserVotedChannel,
            bool argIsOwnerOrEmployee, bool argIsSubscribedToChannel, bool argHasApplied, bool argHasUserVotedVideo,
            IQueryable<Announcement> argAnnouncements, IQueryable<ScheduleVideo> argTopRated)
        {
            Channel = argChannel;
            Owner = argOwner;
            Category = argCategory;
            CurrentSchedule = argCurrentSchedule;
            Schedule = argSchedule;
            HasUserVotedChannel = argHasUserVotedChannel;
            IsOwnerOrEmployee = argIsOwnerOrEmployee;
            IsSubscribedToChannel = argIsSubscribedToChannel;
            HasAppliedToChannel = argHasApplied;
            HasUserVotedVideo = argHasUserVotedVideo;
            Announcements = argAnnouncements;
            TopRated = argTopRated;
        }
    }
}
